<html
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">

    <ui:composition template="layout.xhtml">
        <ui:define name="title">
           Pesquisar Registro de Imóveis
        </ui:define>

        <ui:define name="content">

            <h:form id="pesquisarImovelForm">
                
                <p:messages id="pesquisarImovelMessages" autoUpdate="true" />

                <div class="actions">
                    <div id="buttons">
                        <p:button value="Registrar Imóvel" outcome="criarImovel.xhtml"
                                  icon="ui-icon-plus" styleClass="ui-priority-primary">
                        </p:button>
                    </div>
                </div>

                <f:validateBean disabled="true">
                    <p:fieldset legend="Dados do Imóvel" id="dadosImovelPanel" >

                        <div class="row">
                            <div class="column1">
                                <p:outputLabel value="Matrícula" for="registroInputText" />
                            </div>
                            <div class="column2">
                                <p:inputText id="registroInputText" value="#{ managerPesquisarImovel.registro }"
                                             onkeypress="jQuery(this).autoNumeric({aSep: '', aDec: ',', vMin:0, wEmpty: '0', mDec: 0});" />
                            </div>

                            <div class="column3">
                                <p:outputLabel value="Tipo" for="tipoEnderecoSelectOneMenu" />
                            </div>
                            <div class="column3">
                                <p:selectOneMenu id="tipoEnderecoSelectOneMenu" value="#{ managerPesquisarImovel.objetoPesquisar.endereco.tipo  }">
                                    <f:selectItems value="#{ enums.tiposEndereco() }" />
                                </p:selectOneMenu>
                            </div>                                
                        </div>

                        <div class="row">
                            <div class="column1">
                                <p:outputLabel value="Número" for="numeroInputText" />
                            </div>
                            <div class="column2">
                                <p:inputText id="numeroInputText" value="#{ managerPesquisarImovel.objetoPesquisar.endereco.numero }"/>
                            </div>                                

                            <div class="column3">
                                <p:outputLabel value="Logradouro" for="logradouroInputText" />
                            </div>
                            <div class="column6">
                                <p:inputText id="logradouroInputText" value="#{ managerPesquisarImovel.objetoPesquisar.endereco.logradouro }"/>
                            </div>
                        </div>

                        <div class="row">
                            <div class="column1">
                                <p:outputLabel value="Bairro" for="bairroInputText" />
                            </div>
                            <div class="column4">
                                <p:inputText id="bairroInputText" value="#{ managerPesquisarImovel.objetoPesquisar.endereco.bairro }"/>
                            </div>                                

                            <div class="column1">
                                <p:outputLabel value="Cidade" for="cidadeAutoComplete" />
                            </div>
                            <div class="column6">
                                <p:autoComplete id="cidadeAutoComplete" value="#{ managerPesquisarImovel.objetoPesquisar.endereco.cidade }"
                                                forceSelection="true" dropdown="true" var="cidade" itemValue="#{ cidade }" 
                                                itemLabel="#{ cidade.nome }" completeMethod="#{ managerPesquisarImovel.autocompletarCidade }"
                                                converter="conversorcidade" minQueryLength="3" />
                            </div>
                        </div>                       

                    </p:fieldset>

                    <p:fieldset legend="Adquirente ou Transmitente" id="adquirenteTransmitentePanel">
                        <div class="row">
                            <p:selectOneRadio id="tipoPessoaSelectOneMenu" value="#{ managerPesquisarImovel.tipoPesquisaImovel }" >
                                <f:selectItems value="#{ enums.tipoPesquisaImovel() }" />
                            </p:selectOneRadio>
                        </div>

                        <div class="row">
                            <div class="column1">
                                <p:outputLabel value="Nome" for="nomeInputText" />
                            </div>
                            <div class="column4">
                                <p:inputText id="nomeInputText" value="#{ managerPesquisarImovel.pessoaPesquisar.nome }" />
                            </div>
                        </div>

                        <div class="row">
                            <div class="column1">
                                <p:outputLabel value="CPF" for="cpfInputMask" />
                            </div>
                            <div class="column4">
                                <p:inputMask id="cpfInputMask" value="#{ managerPesquisarImovel.pessoaPesquisar.cpf }"
                                             mask="999.999.999-99" />
                            </div>

                            <div class="column1">
                                <p:outputLabel value="CNPJ" for="cnpjInputText" />
                            </div>
                            <div class="column4">
                                <p:inputMask id="cnpjInputText" value="#{ managerPesquisarPessoa.pessoaPesquisar.cnpj }"
                                             mask="99.999.999/9999-99" />
                            </div>
                        </div>

                    </p:fieldset>
                </f:validateBean>

                <div class="command">
                    <p:commandButton
                        id="pesquisarcommandButton" value="Pesquisar" icon="ui-icon-search"
                        styleClass="ui-priority-primary" oncomplete="widthFix();"
                        update="@form" actionListener="#{ managerPesquisarImovel.pesquisar() }" />
                    <p:commandButton value="Limpar" icon="ui-icon-close" oncomplete="widthFix();"
                                     update="@form" actionListener="#{ managerPesquisarImovel.limpar() }" />
                </div>

                <p:dataTable styleClass="column12" id="imoveisDataTable" var="imovel"

                             value="#{ managerPesquisarImovel.imoveis }"
                             rows="10" paginator="true" paginatorPosition="bottom" emptyMessage="Nenhum Imóvel encontrada">
                    <p:column width="10%" headerText="Opções">
                        <div class="options1">
                            <p:button
                                title="Visualizar" href="visualizarImovel.xhtml?imovelId=#{ imovel.id }"
                                icon="ui-icon-search"/>
                        </div>
                    </p:column>                  

                    <p:column headerText="Registro/Matrícula" width="10%">
                        <h:outputText value="#{ imovel.registro }" />
                    </p:column>

                    <p:column headerText="Data do Registro" width="15%">
                        <h:outputText value="#{ imovel.dataCadastro }">
                            <f:convertDateTime pattern="dd/MM/yyyy" />
                        </h:outputText>
                    </p:column>

                    <p:column headerText="Últimos Adquirentes" width="65%">
                        <p:dataTable var="pessoa" value="#{ managerPesquisarImovel.ultimoAdquirente(imovel) }"
                                     styleClass="innerDataTable">
                            <p:column headerText="Cliente" width="70%">
                                #{ pessoa.nome }
                            </p:column>                                
                            <p:column headerText="Documento" width="30%">
                                #{ pessoa.tipoPessoa eq 'FISICA' ? managerPesquisarImovel.adicionarMascaraCPF(pessoa.cpf) : managerPesquisarImovel.adicionarMascaraCNPJ(pessoa.cnpj)  }
                            </p:column>
                        </p:dataTable>
                    </p:column>                  

                </p:dataTable>

                <p:dialog header="Deseja realmente excluir?" widgetVar="dialogApagar" modal="true"
                          closable="false" resizable="false" draggable="false" >
                    <div class="commandDialog">
                        <p:commandButton value="Sim" update=":pesquisarImovelForm:imoveisDataTable"
                                         oncomplete="dialogApagar.hide()" icon="ui-icon-check" actionListener="#{ managerPesquisarImovel.deletar() }" />
                        <p:commandButton value="Não" icon="ui-icon-close" oncomplete="dialogApagar.hide()" />
                    </div>
                </p:dialog>

            </h:form>

            <script>
                $(document).ready(function() {
                    setSelectedMenu('#imovel');
                });
            </script>

        </ui:define>
    </ui:composition>

</html>
